﻿namespace WMS6.Web.AnalyticsReportServiceRef
{
    using System;
    using System.CodeDom.Compiler;
    using System.ComponentModel;
    using System.Diagnostics;
    using System.Runtime.CompilerServices;
    using System.Runtime.Serialization;

    [Serializable, GeneratedCode("System.Runtime.Serialization", "3.0.0.0"), DataContract(Name="ASNStatusRptInfo", Namespace="http://schemas.datacontract.org/2004/07/WMS6.DataEntity"), DebuggerStepThrough]
    public class ASNStatusRptInfo : IExtensibleDataObject, INotifyPropertyChanged
    {
        [OptionalField]
        private string CURRENTPAGEField;
        [OptionalField]
        private DateTime EXPECTED_RECEIPT_DATEField;
        [NonSerialized]
        private ExtensionDataObject extensionDataField;
        [OptionalField]
        private string EXTERN_RECEIPT_IDField;
        [OptionalField]
        private string OWNER_IDField;
        [OptionalField]
        private string PO_IDField;
        [OptionalField]
        private DateTime RECEIPT_DATEField;
        [OptionalField]
        private string RECEIPT_IDField;
        [OptionalField]
        private string RECEIPT_TYPEField;
        [OptionalField]
        private string REMARKField;
        [OptionalField]
        private string RMAField;
        [OptionalField]
        private string SKU_CLASS_IDField;
        [OptionalField]
        private string STATUSField;
        [OptionalField]
        private string TOTALPAGESCOUNTField;
        [OptionalField]
        private string TOTALRECORDSCOUNTField;
        [OptionalField]
        private string VENDOR_IDField;
        [OptionalField]
        private string VENDOR_NAMEField;

        public event PropertyChangedEventHandler PropertyChanged;

        protected void RaisePropertyChanged(string propertyName)
        {
            PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if (propertyChanged != null)
            {
                propertyChanged(this, new PropertyChangedEventArgs(propertyName));
            }
        }

        [DataMember]
        public string CURRENTPAGE
        {
            get
            {
                return this.CURRENTPAGEField;
            }
            set
            {
                if (!object.ReferenceEquals(this.CURRENTPAGEField, value))
                {
                    this.CURRENTPAGEField = value;
                    this.RaisePropertyChanged("CURRENTPAGE");
                }
            }
        }

        [DataMember]
        public DateTime EXPECTED_RECEIPT_DATE
        {
            get
            {
                return this.EXPECTED_RECEIPT_DATEField;
            }
            set
            {
                if (!this.EXPECTED_RECEIPT_DATEField.Equals(value))
                {
                    this.EXPECTED_RECEIPT_DATEField = value;
                    this.RaisePropertyChanged("EXPECTED_RECEIPT_DATE");
                }
            }
        }

        [Browsable(false)]
        public ExtensionDataObject ExtensionData
        {
            get
            {
                return this.extensionDataField;
            }
            set
            {
                this.extensionDataField = value;
            }
        }

        [DataMember]
        public string EXTERN_RECEIPT_ID
        {
            get
            {
                return this.EXTERN_RECEIPT_IDField;
            }
            set
            {
                if (!object.ReferenceEquals(this.EXTERN_RECEIPT_IDField, value))
                {
                    this.EXTERN_RECEIPT_IDField = value;
                    this.RaisePropertyChanged("EXTERN_RECEIPT_ID");
                }
            }
        }

        [DataMember]
        public string OWNER_ID
        {
            get
            {
                return this.OWNER_IDField;
            }
            set
            {
                if (!object.ReferenceEquals(this.OWNER_IDField, value))
                {
                    this.OWNER_IDField = value;
                    this.RaisePropertyChanged("OWNER_ID");
                }
            }
        }

        [DataMember]
        public string PO_ID
        {
            get
            {
                return this.PO_IDField;
            }
            set
            {
                if (!object.ReferenceEquals(this.PO_IDField, value))
                {
                    this.PO_IDField = value;
                    this.RaisePropertyChanged("PO_ID");
                }
            }
        }

        [DataMember]
        public DateTime RECEIPT_DATE
        {
            get
            {
                return this.RECEIPT_DATEField;
            }
            set
            {
                if (!this.RECEIPT_DATEField.Equals(value))
                {
                    this.RECEIPT_DATEField = value;
                    this.RaisePropertyChanged("RECEIPT_DATE");
                }
            }
        }

        [DataMember]
        public string RECEIPT_ID
        {
            get
            {
                return this.RECEIPT_IDField;
            }
            set
            {
                if (!object.ReferenceEquals(this.RECEIPT_IDField, value))
                {
                    this.RECEIPT_IDField = value;
                    this.RaisePropertyChanged("RECEIPT_ID");
                }
            }
        }

        [DataMember]
        public string RECEIPT_TYPE
        {
            get
            {
                return this.RECEIPT_TYPEField;
            }
            set
            {
                if (!object.ReferenceEquals(this.RECEIPT_TYPEField, value))
                {
                    this.RECEIPT_TYPEField = value;
                    this.RaisePropertyChanged("RECEIPT_TYPE");
                }
            }
        }

        [DataMember]
        public string REMARK
        {
            get
            {
                return this.REMARKField;
            }
            set
            {
                if (!object.ReferenceEquals(this.REMARKField, value))
                {
                    this.REMARKField = value;
                    this.RaisePropertyChanged("REMARK");
                }
            }
        }

        [DataMember]
        public string RMA
        {
            get
            {
                return this.RMAField;
            }
            set
            {
                if (!object.ReferenceEquals(this.RMAField, value))
                {
                    this.RMAField = value;
                    this.RaisePropertyChanged("RMA");
                }
            }
        }

        [DataMember]
        public string SKU_CLASS_ID
        {
            get
            {
                return this.SKU_CLASS_IDField;
            }
            set
            {
                if (!object.ReferenceEquals(this.SKU_CLASS_IDField, value))
                {
                    this.SKU_CLASS_IDField = value;
                    this.RaisePropertyChanged("SKU_CLASS_ID");
                }
            }
        }

        [DataMember]
        public string STATUS
        {
            get
            {
                return this.STATUSField;
            }
            set
            {
                if (!object.ReferenceEquals(this.STATUSField, value))
                {
                    this.STATUSField = value;
                    this.RaisePropertyChanged("STATUS");
                }
            }
        }

        [DataMember]
        public string TOTALPAGESCOUNT
        {
            get
            {
                return this.TOTALPAGESCOUNTField;
            }
            set
            {
                if (!object.ReferenceEquals(this.TOTALPAGESCOUNTField, value))
                {
                    this.TOTALPAGESCOUNTField = value;
                    this.RaisePropertyChanged("TOTALPAGESCOUNT");
                }
            }
        }

        [DataMember]
        public string TOTALRECORDSCOUNT
        {
            get
            {
                return this.TOTALRECORDSCOUNTField;
            }
            set
            {
                if (!object.ReferenceEquals(this.TOTALRECORDSCOUNTField, value))
                {
                    this.TOTALRECORDSCOUNTField = value;
                    this.RaisePropertyChanged("TOTALRECORDSCOUNT");
                }
            }
        }

        [DataMember]
        public string VENDOR_ID
        {
            get
            {
                return this.VENDOR_IDField;
            }
            set
            {
                if (!object.ReferenceEquals(this.VENDOR_IDField, value))
                {
                    this.VENDOR_IDField = value;
                    this.RaisePropertyChanged("VENDOR_ID");
                }
            }
        }

        [DataMember]
        public string VENDOR_NAME
        {
            get
            {
                return this.VENDOR_NAMEField;
            }
            set
            {
                if (!object.ReferenceEquals(this.VENDOR_NAMEField, value))
                {
                    this.VENDOR_NAMEField = value;
                    this.RaisePropertyChanged("VENDOR_NAME");
                }
            }
        }
    }
}

